package com.project.mapper;

import com.project.bean.TopicBean;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;
import java.util.List;

@Mapper
public interface ITopicMapper {
    List<TopicBean> findByItem(@Param("id") int channelId, @Param("name") String name,
                               @Param("userName") String userName, @Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate);


    @Insert("insert into t_topic(t_name,t_info,fk_userId,fk_channelId,t_date)value" +
            "(#{name},#{info},#{user.id},#{channel.id},#{deliverDate})")
    void add(TopicBean topic);

    /**
     * 根据id查找主贴，同时查找发帖人信息，同时包含该主贴的回贴的信息，在回贴信息中，包含回帖人的信息
     * @param id id
     * @return 主贴对象
     */
    TopicBean findById(int id);
}
